package br.com.sgbl.service;

import br.com.sgbl.bean.Funcionario;
import br.com.sgbl.dao.FuncionarioDao;
import java.sql.SQLException;
import java.util.List;

/**
 *
 * @author Heidi Kussakawa
 */
public class FuncionarioService {

    private FuncionarioDao funcionarioDao;

    public FuncionarioService() {
        funcionarioDao = new FuncionarioDao();
    }

    public Funcionario salvar(Funcionario funcionario) {
        try {
            return funcionarioDao.salvar(funcionario);
        } catch (SQLException ex) {
            throw new RuntimeException(
                    "Erro de BD!\n" + ex.getMessage(), ex);
        } catch (Exception ex) {
            throw new RuntimeException(
                    "Erro desconhecido!\n" + ex.getMessage(), ex);
        }
    }

    public List listar() {
        try {
            return funcionarioDao.listar();
        } catch (SQLException ex) {
            throw new RuntimeException(
                    "Erro de BD!\n" + ex.getMessage(), ex);
        } catch (Exception ex) {
            throw new RuntimeException(
                    "Erro desconhecido!\n" + ex.getMessage(), ex);
        }
    }

    public void excluir(Funcionario funcionario) {
        try {
            funcionarioDao.excluir(funcionario);
        } catch (SQLException ex) {
            throw new RuntimeException(
                    "Erro de BD!\n" + ex.getMessage(), ex);
        } catch (Exception ex) {
            throw new RuntimeException(
                    "Erro desconhecido!\n" + ex.getMessage(), ex);
        }
    }
    
    public Funcionario logar(Funcionario funcionario) {
        try {
            return funcionarioDao.logar(funcionario);
        } catch (SQLException ex) {
            throw new RuntimeException(
                    "Erro de BD!\n" + ex.getMessage(), ex);
        } catch (Exception ex) {
            throw new RuntimeException(
                    "Erro desconhecido!\n" + ex.getMessage(), ex);
        }
    }
}
